package com.jt.www.model.vo.endorse;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;


@ApiModel("险种信息实体")
public class BusRiskVO {
    private Long id;

    /**
     * 险种编码
     */
    @ApiModelProperty("险种编码")
    private String riskCode;

    /**
     * 险种类别（码值遵循产品中心）：
     * 主险、附加险
     */
    @ApiModelProperty("险种类别")
    private String riskType;

    /**
     * 保险期间类型。
     * A——岁
     * Y——年
     * M——月
     * D——天
     */
    @ApiModelProperty("保险期间类型")
    private String policyTermType;

    /**
     * 保险期间
     */
    @ApiModelProperty("保险期间")
    private String policyTerm;

    /**
     * 缴费频率
     * 趸交（0）
     * 年交（12）
     * 月交（1）
     * 季交（3）
     * 半年交（6）
     * 不定期交（-1）
     */
    @ApiModelProperty("缴费频率")
    private String paymentFreq;

    /**
     * 缴费期间类型
     * A——岁
     * Y——年
     * M——月
     * D——天
     */
    @ApiModelProperty("缴费期间类型")
    private String paymentPeriodType;

    /**
     * 缴费期间
     */
    @ApiModelProperty("缴费期间")
    private String paymentPeriod;

    /**
     * 险种生效日期
     */
    @ApiModelProperty("险种生效日期")
    private String startDate;

    /**
     * 险种终止日期
     */
    @ApiModelProperty("险种终止日期")
    private String endDate;

    /**
     * 险种原保费
     */
    @ApiModelProperty("险种原保费")
    private BigDecimal prem;

    /**
     * 优惠保费
     */
    @ApiModelProperty("优惠保费")
    private BigDecimal reducePrem;

    /**
     * 险种档次
     * 特设索道中，将险种不同限额打包再区分为不同的档次，便于售卖。
     */
    @ApiModelProperty("优惠保费")
    private String riskGrade;

    @ApiModelProperty("优惠保费")
    private String riskName;

    /**
     * 主险编码
     */
    @ApiModelProperty("优惠保费")
    private String mainRiskCode;

    /**
     * 方案编码
     */
    @ApiModelProperty("优惠保费")
    private String programeCode;

    /**
     * 投保单ID
     */
    @ApiModelProperty("投保单ID")
    private Long tBusApplicationFormId;

    /**
     * 保额
     */
    @ApiModelProperty("保额")
    private BigDecimal amount;

    /**
     * 批改后保额
     */
    @ApiModelProperty("批改后保额")
    private BigDecimal afterAmount;

    /**
     * 份数
     */
    @ApiModelProperty("份数")
    private Integer quantity;

    /**
     * 犹豫期天数
     */
    @ApiModelProperty("犹豫期天数")
    private Integer cooloffPeriod;

    /**
     * 险类编码
     */
    @ApiModelProperty("险类编码")
    private String riskTypeCode;

    /**
     * 险类名称
     */
    @ApiModelProperty("险类名称")
    private String riskTypeName;

    /**
     * 优惠前保费
     */
    @ApiModelProperty("优惠前保费")
    private BigDecimal beforePrem;

    /**
     * 优惠后保费
     */
    @ApiModelProperty("优惠后保费")
    private BigDecimal afterPrem;

    /**
     * 实付保费
     */
    @ApiModelProperty("实付保费")
    private BigDecimal actualPrem;

    /**
     * 保费变动类型
     */
    @ApiModelProperty("保费变动类型")
    private String premChangeType;

    /**
     * 保费变动描述
     */
    @ApiModelProperty("保费变动描述")
    private String premChangeDesc;

    /**
     * 续期保费
     */
    @ApiModelProperty("续期保费")
    private BigDecimal renewPrem;

    /**
     * 险种变更状态
     */
    @ApiModelProperty("险种变更状态")
    private String riskChange;

    /**
     * 自动续保
     */
    @ApiModelProperty("自动续保")
    private String autoRenewal;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getRiskCode() {
        return riskCode;
    }

    public void setRiskCode(String riskCode) {
        this.riskCode = riskCode;
    }

    public String getRiskType() {
        return riskType;
    }

    public void setRiskType(String riskType) {
        this.riskType = riskType;
    }

    public String getPolicyTermType() {
        return policyTermType;
    }

    public void setPolicyTermType(String policyTermType) {
        this.policyTermType = policyTermType;
    }

    public String getPolicyTerm() {
        return policyTerm;
    }

    public void setPolicyTerm(String policyTerm) {
        this.policyTerm = policyTerm;
    }

    public String getPaymentFreq() {
        return paymentFreq;
    }

    public void setPaymentFreq(String paymentFreq) {
        this.paymentFreq = paymentFreq;
    }

    public String getPaymentPeriodType() {
        return paymentPeriodType;
    }

    public void setPaymentPeriodType(String paymentPeriodType) {
        this.paymentPeriodType = paymentPeriodType;
    }

    public String getPaymentPeriod() {
        return paymentPeriod;
    }

    public void setPaymentPeriod(String paymentPeriod) {
        this.paymentPeriod = paymentPeriod;
    }

    public String getStartDate() {
        return startDate;
    }

    public void setStartDate(String startDate) {
        this.startDate = startDate;
    }

    public String getEndDate() {
        return endDate;
    }

    public void setEndDate(String endDate) {
        this.endDate = endDate;
    }

    public BigDecimal getPrem() {
        return prem;
    }

    public void setPrem(BigDecimal prem) {
        this.prem = prem;
    }

    public BigDecimal getReducePrem() {
        return reducePrem;
    }

    public void setReducePrem(BigDecimal reducePrem) {
        this.reducePrem = reducePrem;
    }

    public String getRiskGrade() {
        return riskGrade;
    }

    public void setRiskGrade(String riskGrade) {
        this.riskGrade = riskGrade;
    }

    public String getRiskName() {
        return riskName;
    }

    public void setRiskName(String riskName) {
        this.riskName = riskName;
    }

    public String getMainRiskCode() {
        return mainRiskCode;
    }

    public void setMainRiskCode(String mainRiskCode) {
        this.mainRiskCode = mainRiskCode;
    }

    public String getProgrameCode() {
        return programeCode;
    }

    public void setProgrameCode(String programeCode) {
        this.programeCode = programeCode;
    }

    public Long gettBusApplicationFormId() {
        return tBusApplicationFormId;
    }

    public void settBusApplicationFormId(Long tBusApplicationFormId) {
        this.tBusApplicationFormId = tBusApplicationFormId;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public BigDecimal getAfterAmount() {
        return afterAmount;
    }

    public void setAfterAmount(BigDecimal afterAmount) {
        this.afterAmount = afterAmount;
    }

    public Integer getQuantity() {
        return quantity;
    }

    public void setQuantity(Integer quantity) {
        this.quantity = quantity;
    }

    public Integer getCooloffPeriod() {
        return cooloffPeriod;
    }

    public void setCooloffPeriod(Integer cooloffPeriod) {
        this.cooloffPeriod = cooloffPeriod;
    }

    public String getRiskTypeCode() {
        return riskTypeCode;
    }

    public void setRiskTypeCode(String riskTypeCode) {
        this.riskTypeCode = riskTypeCode;
    }

    public String getRiskTypeName() {
        return riskTypeName;
    }

    public void setRiskTypeName(String riskTypeName) {
        this.riskTypeName = riskTypeName;
    }

    public BigDecimal getBeforePrem() {
        return beforePrem;
    }

    public void setBeforePrem(BigDecimal beforePrem) {
        this.beforePrem = beforePrem;
    }

    public BigDecimal getAfterPrem() {
        return afterPrem;
    }

    public void setAfterPrem(BigDecimal afterPrem) {
        this.afterPrem = afterPrem;
    }

    public BigDecimal getActualPrem() {
        return actualPrem;
    }

    public void setActualPrem(BigDecimal actualPrem) {
        this.actualPrem = actualPrem;
    }

    public String getPremChangeType() {
        return premChangeType;
    }

    public void setPremChangeType(String premChangeType) {
        this.premChangeType = premChangeType;
    }

    public String getPremChangeDesc() {
        return premChangeDesc;
    }

    public void setPremChangeDesc(String premChangeDesc) {
        this.premChangeDesc = premChangeDesc;
    }

    public BigDecimal getRenewPrem() {
        return renewPrem;
    }

    public void setRenewPrem(BigDecimal renewPrem) {
        this.renewPrem = renewPrem;
    }

    public String getRiskChange() {
        return riskChange;
    }

    public void setRiskChange(String riskChange) {
        this.riskChange = riskChange;
    }

    public String getAutoRenewal() {
        return autoRenewal;
    }

    public void setAutoRenewal(String autoRenewal) {
        this.autoRenewal = autoRenewal;
    }
}
